<!-- Copyright (C) 2019-2021 Junruoyu Zheng. Home page: https://junruoyu-zheng.gitee.io/ligral

     Distributed under MIT license.
     See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-->
<!DOCTYPE html>
<html lang="en">
 <head>
  <title>
   Ligral 首页
  </title>
  <meta charset="utf-8"/>
  <meta content="width=device-width, initial-scale=1, shrink-to-fit=no" name="viewport"/>
  <!-- Main CSS -->
  <link href="/ligral/css/style.css" rel="stylesheet"/>
  <link href="/ligral/css/rolling.css" rel="stylesheet"/>
  <link href="/ligral/css/custom.css" rel="stylesheet"/>
  <link href="/ligral/css/katex.min.css" rel="stylesheet"/>
  <link href="/ligral/avatar.png" rel="shortcut icon" type="image/x-icon"/>
  <!-- Font Awesome -->
  <script crossorigin="anonymous" src="https://kit.fontawesome.com/14294c79e2.js">
  </script>
 </head>
 <body>
  <!-- Header -->
  <div class="header-wrap d-none d-md-block">
   <div class="container">
    <div class="row">
     <!-- Left header box -->
     <header class="col-6 text-left">
      <h1 class="letter-wrap title">
       Ligral
      </h1>
     </header>
    </div>
   </div>
  </div>
  <!-- Main navigation -->
  <nav class="navbar navbar-expand-md navbar-dark bg-primary">
   <div class="container">
    <!-- Company name shown on mobile -->
    <a class="navbar-brand d-md-none d-lg-none d-xl-none" href="#">
     Ligral
    </a>
    <!-- Mobile menu toggle -->
    <button aria-controls="mainNavbar" aria-expanded="false" aria-label="Toggle navigation" class="navbar-toggler" data-target="#mainNavbar" data-toggle="collapse" type="button">
     <span class="navbar-toggler-icon">
     </span>
    </button>
    <!-- Main navigation items -->
    <div class="collapse navbar-collapse" id="mainNavbar">
     <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
       <a class="nav-link" href="/ligral/index.html">
        主页
        <span class="sr-only">
         (current)
        </span>
       </a>
      </li>
      <li class="nav-item dropdown">
       <a aria-expanded="false" aria-haspopup="true" class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">
        文档
       </a>
       <div class="dropdown-menu navbar-dark bg-primary">
        <a class="dropdown-item" href="/ligral/quick-start.html">
         快速开始
        </a>
        <a class="dropdown-item" href="/ligral/user-guide">
         用户文档
        </a>
        <a class="dropdown-item" href="/ligral/dev-guide">
         开发文档
        </a>
        <a class="dropdown-item" href="/ligral/interface/">
         接口定义
        </a>
       </div>
      </li>
      <!-- <li class="nav-item">
                                <a class="nav-link" href="#">Services</a>
                        </li> -->
      <li class="nav-item">
       <a class="nav-link" href="/ligral/product.html">
        产品
       </a>
      </li>
      <li class="nav-item">
       <a class="nav-link" href="/ligral/contact.html">
        联系我们
       </a>
      </li>
     </ul>
     <!-- <form class="form-inline header-search-form my-2 my-lg-0">
                        <input class="form-control mr-sm-2" type="text" size="10"  placeholder="Search" aria-label="Search">
                        <button class="btn btn-secondary my-2 my-sm-0" type="submit">Search</button>
                    </form> -->
    </div>
   </div>
  </nav>
  <!-- Jumbtron / Slider -->
  <div class="jumbotron-wrap">
   <div class="container">
    <div class="carousel slide" data-ride="carousel" id="mainCarousel">
     <div class="carousel-inner">
      <div class="carousel-item active">
       <div class="jumbotron">
        <h1 class="text-center">
         Ligral 预览版 v0.2.2 已经上线
        </h1>
        <p class="lead text-center">
         此版本增加了高精度龙格库塔求解器以及配平和线性化等功能。
        </p>
        <p class="lead text-center">
         <a class="btn btn-primary btn-lg" href="https://gitee.com/junruoyu-zheng/ligral/wikis" role="button" target="_blank">
          <i class="fa fa-info-circle">
          </i>
          了解更多
         </a>
         <a class="btn btn-secondary btn-lg" href="https://gitee.com/junruoyu-zheng/ligral/releases/v0.2.2-beta" role="button" target="_blank">
          <i class="fa fa-cloud-download-alt">
          </i>
          下载
         </a>
        </p>
       </div>
      </div>
      <div class="carousel-item">
       <div class="jumbotron">
        <h1 class="text-center">
         欢迎加入 Ligral 开发团队
        </h1>
        <p class="lead text-center">
         我们目前致力于开发求解器以及扩展工具箱。
        </p>
        <p class="lead text-center">
         <a class="btn btn-outline-primary btn-lg" href="https://gitee.com/junruoyu-zheng/ligral/issues" role="button" target="_blank">
          <i class="fa fa-info-circle">
          </i>
          提交 Issue
         </a>
         <a class="btn btn-outline-secondary btn-lg" href="https://gitee.com/junruoyu-zheng/ligral/pulls" role="button" target="_blank">
          <i class="fa fa-cloud-upload-alt">
          </i>
          提交 PR
         </a>
        </p>
       </div>
      </div>
     </div>
     <a class="carousel-control-prev" data-slide="prev" href="#mainCarousel" role="button">
      <span aria-hidden="true" class="carousel-control-prev-icon">
      </span>
      <span class="sr-only">
       Previous
      </span>
     </a>
     <a class="carousel-control-next" data-slide="next" href="#mainCarousel" role="button">
      <span aria-hidden="true" class="carousel-control-next-icon">
      </span>
      <span class="sr-only">
       Next
      </span>
     </a>
    </div>
   </div>
  </div>
  <!-- Main content area -->
  <main class="container">
   <div class="row">
    <!-- Main content -->
    <div class="col-sm-8">
     <article>
      <h1>
       Ligral
      </h1>
      <p>
       <img alt="LOGO" src="https://sued-wind.cc/static/img/ligral/ligral.png"/>
      </p>
      <p>
       Ligral是一个基于文本的仿真语言，旨在替代 Simulink 进行仿真，通过与框图等效的文本语言描述仿真对象，并解释/编译而后求解。
      </p>
      <p>
       <a href="https://gitee.com/junruoyu-zheng/ligral/releases/v0.2.1" target="_blank">
        <img src="https://img.shields.io/badge/版本-0.2.1-brightgreen"/>
       </a>
       <a href="https://gitee.com/junruoyu-zheng/ligral/stargazers" target="_blank">
        <img alt="star" src="https://gitee.com/junruoyu-zheng/ligral/badge/star.svg?theme=gray"/>
       </a>
       <a href="README_en.md">
        <img src="https://img.shields.io/badge/English-README-blue"/>
       </a>
      </p>
      <h2>
       安装
      </h2>
      <p>
       目前发布了
       <a href="https://gitee.com/junruoyu-zheng/ligral/releases/v0.2.2-beta" target="_blank">
        v0.2.2
       </a>
       预览版，您也可以克隆本项目到本地编译。
      </p>
      <pre><code>git clone https://gitee.com/junruoyu-zheng/ligral.git
cd ligral
dotnet build
./bin/Debug/netcoreapp3.1/ligral
</code></pre>
      <p>
       详细安装方法请参考
       <a href="doc/quick-start/README.md">
        快速开始
       </a>
       。
      </p>
      <h2>
       使用
      </h2>
      <p>
       运行仿真工程需要给出仿真工程文件作为第一个位置参数，该命令支持以下参数：
      </p>
      <table>
       <thead>
        <tr>
         <th>
          参数
         </th>
         <th>
          作用
         </th>
        </tr>
       </thead>
       <tbody>
        <tr>
         <td>
          [ProjectFileName]
         </td>
         <td>
          仿真工程文件，一般是
          <code>
           .lig
          </code>
          和
          <code>
           .lig.json
          </code>
          文件
         </td>
        </tr>
        <tr>
         <td>
          -s, --step-size [StepSize]
         </td>
         <td>
          设置仿真步长，仅在定步长求解器中生效
         </td>
        </tr>
        <tr>
         <td>
          -t, --stop-time [StopTime]
         </td>
         <td>
          设置仿真时长
         </td>
        </tr>
        <tr>
         <td>
          -j, --json [bool]?
         </td>
         <td>
          指定输入
          <code>
           .lig.json
          </code>
          文件，默认为输入
          <code>
           .lig
          </code>
          文件
         </td>
        </tr>
        <tr>
         <td>
          -o, --output [Folder]
         </td>
         <td>
          仿真输出重定向至给定文件夹
         </td>
        </tr>
       </tbody>
      </table>
      <p>
       Ligral 目前支持的命令包括
       <code>
        doc
       </code>
       、
       <code>
        trim
       </code>
       、
       <code>
        lin
       </code>
       和
       <code>
        exm
       </code>
       ，可以通过
       <code>
        ligral [command] --help
       </code>
       查看使用说明。
      </p>
      <h2>
       依赖
      </h2>
      <p>
       如果启用内部绘图工具（
       <code>
        InnerPlotter
       </code>
       ），绘图模块
       <code>
        Scope
       </code>
       和
       <code>
        PhaseDiagram
       </code>
       需要 python 3 支持，且需要numpy、matplotlib、pandas包。
      </p>
      <h2>
       示例
      </h2>
      <p>
       以下是一个弹簧阻尼质量块系统的仿真（
       <a href="examples/mass-spring-damper/main.lig">
        代码
       </a>
       ）。
      </p>
      <pre><code># 定义一个路由 MassSpringDamper
route MassSpringDamper(m, k, d, x0, v0; F; x, v)
    F-k*x-d*v -&gt; Gain{value:1/m} -&gt; Integrator{initial:v0} -&gt; v;
    v -&gt; Integrator{initial:x0} -&gt; x;
end

# 定义一个 Step 信号
Step[F]{start:3, level:5};

# 实例化一个 MassSpringDamper 对象
MassSpringDamper[sys]{m:0.1, k:10, d:0.3, x0:1, v0: 0};

# 连接模块
F -&gt; sys;
sys:x[position] -&gt; Scope;
(sys:x, sys:v[velocity]) -&gt; PhaseDiagram;

# 设置定步长仿真配置参数
conf step_size = 0.001;
conf stop_time = 10;

# 设置输出文件夹
conf output_folder = 'out';
</code></pre>
      <p>
       <img alt="plots!!" src="img/mass-spring-damper.gif" style="max-width:100%;"/>
      </p>
      <p>
       更多例子参见
       <a href="examples/">
        examples
       </a>
      </p>
      <h2>
       语法
      </h2>
      <p>
       语法参见
       <a href="doc/user-guide/README.md">
        用户指引
       </a>
       ，目前已编写完成的文档如下：
      </p>
      <ul>
       <li>
        <a href="doc/user-guide/terms.md">
         术语定义
        </a>
       </li>
       <li>
        <a href="doc/user-guide/config.md">
         设置语句
        </a>
       </li>
       <li>
        <a href="doc/user-guide/const.md">
         声明常量
        </a>
       </li>
       <li>
        <a href="doc/user-guide/node.md">
         声明节点
        </a>
       </li>
       <li>
        <a href="doc/user-guide/link.md">
         节点连接
        </a>
       </li>
       <li>
        <a href="doc/user-guide/matrix.md">
         矩阵运算
        </a>
       </li>
       <li>
        <a href="doc/user-guide/route.md">
         路由类型
        </a>
       </li>
       <li>
        <a href="doc/user-guide/import.md">
         引用依赖
        </a>
       </li>
       <li>
        <a href="doc/user-guide/signature.md">
         接口签名
        </a>
       </li>
      </ul>
      <h2>
       开发
      </h2>
      <p>
       目前开发文档还在努力编撰中。
      </p>
      <ul>
       <li>
        <a href="doc/dev-guide/syntax.md">
         语法设计
        </a>
       </li>
       <li>
        <a href="doc/dev-guide/interpreter.md">
         解释器
        </a>
       </li>
       <li>
        ...
       </li>
      </ul>
      <p>
       如有 bug 反馈或其他建议，请提交
       <a href="https://gitee.com/junruoyu-zheng/ligral/issues" target="_blank">
        issue
       </a>
       。
      </p>
      <p>
       开发计划：
      </p>
      <ul>
       <li>
        增加单元测试
       </li>
       <li>
        增加科学计算语法，进行仿真前处理、后处理
       </li>
       <li>
        统一数据格式为矩阵
       </li>
       <li>
        修复 bugs
       </li>
       <li>
        ...
       </li>
      </ul>
     </article>
    </div>
    <!-- Sidebar -->
    <aside class="col-sm-4">
     <div class="sidebar-box">
      <h4>
       目录
      </h4>
      <div class="list-group list-group-root">
       <a class="list-group-item active" href="index.html">
        主页
       </a>
       <a class="list-group-item" href="/ligral/user-guide">
        文档
       </a>
       <div class="list-group">
        <a class="list-group-item" href="/ligral/quick-start.html">
         快速开始
        </a>
        <a class="list-group-item" href="/ligral/user-guide">
         用户文档
        </a>
        <a class="list-group-item" href="/ligral/dev-guide">
         开发文档
        </a>
        <a class="list-group-item" href="/ligral/interface">
         接口定义
        </a>
       </div>
       <a class="list-group-item" href="/ligral/product.html">
        产品
       </a>
       <a class="list-group-item" href="/ligral/contact.html">
        联系
       </a>
      </div>
     </div>
     <div class="sidebar-box sidebar-box-bg">
      <h4>
       关于我们
      </h4>
      <p>
       我们是一群有志于突破工业软件封锁、具有开源精神的开发者。本项目旨在替代 Simulink 进行仿真，通过与框图等效的文本语言描述仿真对象，并解释/编译而后求解。
       <a class="readmore" href="https://gitee.com/junruoyu-zheng/ligral/wikis" target="_blank">
        更多 »
       </a>
      </p>
     </div>
     <div class="sidebar-box">
      <h4>
       仓库链接
      </h4>
      <ul>
       <li>
        <a href="https://gitee.com/junruoyu-zheng/ligral" target="_blank" title="Gitee">
         Gitee 仓库
        </a>
       </li>
       <li>
        <a href="https://github.com/JRY-Zheng/ligral" target="_blank" title="GitHub">
         GitHub 仓库
        </a>
       </li>
      </ul>
     </div>
    </aside>
   </div>
  </main>
  <!-- Footer -->
  <footer class="footer">
   <div class="footer-lists">
    <div class="container">
     <div class="row">
      <div class="col-sm">
       <ul>
        <li>
         <h4>
          联系我们
         </h4>
        </li>
        <li>
         <a href="mailto:zhengjry@outlook.com">
          给我们发邮件
         </a>
        </li>
        <li>
         <a href="https://www.zhihu.com/people/LostFish" target="_blank">
          来知乎关注我
         </a>
        </li>
        <li>
         <a href="https://web.okjike.com/u/105ad022-f646-48c0-8236-6007ee5179c5" target="_blank">
          来即刻关注我
         </a>
        </li>
       </ul>
      </div>
      <div class="col-sm">
       <ul>
        <li>
         <h4>
          代码仓库
         </h4>
        </li>
        <li>
         <a href="https://gitee.com/junruoyu-zheng/ligral" target="_blank">
          Gitee 仓库
         </a>
        </li>
        <li>
         <a href="https://github.com/JRY-Zheng/ligral" target="_blank">
          GitHub 仓库
         </a>
        </li>
       </ul>
      </div>
      <div class="col-sm">
       <ul>
        <li>
         <h4>
          合作伙伴
         </h4>
        </li>
        <li>
         <a href="http://pyminer.com" target="_blank">
          PyMiner 官网
         </a>
        </li>
        <li>
         <a href="https://gitee.com/py2cn/pyminer" target="_blank">
          PyMiner 仓库地址
         </a>
        </li>
       </ul>
      </div>
      <div class="col-sm">
       <h4>
        致谢
       </h4>
       <p>
        Ligral 的开发得到了很多帮助，特在此致谢！感谢我的单位对创新的鼓励；感谢我的导师 James 对数值积分的指导；感谢 Gitee 对项目的支持，在刚开源不久就为我推荐；感谢 PyMiner 开发团队对我的鼓励和支持！
       </p>
       <p class="social-icons">
        <a href="https://gitee.com/junruoyu-zheng/ligral/stargazers" style="text-decoration: none;" target="_blank">
         <img alt="star" src="https://gitee.com/junruoyu-zheng/ligral/badge/star.svg?theme=dark"/>
        </a>
        <a href="https://www.zhihu.com/people/LostFish" target="_blank">
         <i class="fab fa-zhihu fa-2x zhihu-icon">
         </i>
        </a>
       </p>
      </div>
     </div>
    </div>
   </div>
   <div class="footer-bottom">
    <p class="text-center">
     Copyright © 2021. Ligral All rights reserved. 梨果科技版权所有 © 2021
    </p>
    <p class="text-center">
     <a href="#">
      <i class="fa fa-arrow-up">
      </i>
      回到顶部
     </a>
    </p>
   </div>
  </footer>
  <!-- Bootcamp JavaScript -->
  <!-- jQuery first, then Popper.js, then Bootstrap JS -->
  <script src="/ligral/js/jquery-3.2.1.slim.min.js">
  </script>
  <script src="/ligral/js/popper.min.js">
  </script>
  <script src="/ligral/js/bootstrap.min.js">
  </script>
  <script src="/ligral/js/TweenMax.min.js">
  </script>
  <script src="/ligral/js/rolling.js">
  </script>
 </body>
</html>